SlideShare a Scribd company logo
09 GUIs HUREE University ICT Instructor: M.J LEE
Contents Abstract Window Toolkit Container Frame Panel Layout Manager Flow Layout Border Layout Grid Layout 2
AWT(Abstract Window Toolkit) AWT: the group of classes for GUI in Java 3 ,[object Object]
Component / Container,[object Object]
Panel Use add() method, when adding components Panel can’t be displayed by itself. Therefore, it should be included in Frame Some components are disposed in Panel by Layout Manager 5
6 import java.awt.*;  public class FrameWithPanelextends Frame {  	public FrameWithPanel (String str) {  		super(str);  	}  } Public class FrameWithPanelMain() { 	public static void main (String args[]) { FrameWithPanelfr = new FrameWithPanel(“Panel in Frame"); 		Panel pan = new Panel();    fr.setSize(200,200); 		// a frame fr.setBackground(Color.blue);  fr.setLayout(null);    pan.setSize(100,100); 		// a panel pan.setBackground(Color.yellow);    fr.add(pan);   // put the panel in the frame fr.setVisible(true);  }  } Panel
Layout Manager FlowLayout 	Panel, default Layout manager of Applet BorderLayout 	Window, default Layout manager of Frame GridLayout CardLayout GridBagLayout 7
8 import java.awt.*;  public class ExGui {  	private Frame f; 		// declarationFrame 	private Button b1; 	// declaration Button 	private Button b2; 	public void go() {  		f = new Frame("GUI example");  f.setLayout(new FlowLayout());  	b1 = new Button(“Yes”);  	b2 = new Button(“No");  f.add(b1); 		// append Button on Frame f.add(b2);  f.pack(); 		// instead of “.setSize()” f.setVisible(true);  	}  } public static ExGuiMain() { 	public static void main(String args[]) {  ExGuiguiWindow = new ExGui();  guiWindow.go();  	} } 1. Flow Layout
Layout Manager –1.Flow Layout At above example, which didn't inherit Frame, declared new frame in the class Properties, Flow Layout Manager is a default layout manager of Panel depose components from left to right! depose components at the middle of Frame, as default decide the size of components by itself It is possible to exchange attributes by using constructor 9 setLayout(new FlowLayout(FlowLayout.RIGHT, 20, 40))
Layout Manager –1.Flow Layout Components are disposed at right side. Gap of left and right between components Gap of top and bottom between components (unit: pixel) 10 setLayout(new FlowLayout(FlowLayout.RIGHT, 20, 40)) 1 2 3
11 import java.awt.*;  public class MyFlow {  	private Frame f;  	private Button button1, button2, button3;  	public void go() {  		f = new Frame("Flow Layout"); f.setLayout(new FlowLayout());  		button1 = new Button("Ok"); 	 		button2 = new Button("Open"); 	 		button3 = new Button("Close"); 					f.add(button1);  f.add(button2);  f.add(button3);  f.setSize(100,100);  f.setVisible(true); 	}  } Public class MyFlowMain() { 	public static void main(String args[]) {  MyFlowmflow = new MyFlow();  mflow.go();  	}  }  1. Flow Layout
12 import java.awt.*; public class ExGui2 {  	private Frame f;  	private Button bn, bs, bw, be, bc;  	public void go() {  		f = new Frame("Border Layout");  bn = new Button("B1"); bs = new Button("B2"); bw = new Button("B3"); be = new Button("B4"); bc = new Button("B5"); f.add(bn, BorderLayout.NORTH);  f.add(bs, BorderLayout.SOUTH);  f.add(bw, BorderLayout.WEST); f.add(be, BorderLayout.EAST); f.add(bc, BorderLayout.CENTER);  f.setSize(200,200); f.setVisible(true); 	}  	public static void main(String args[]) {  		ExGui2 guiWindow2 = new ExGui2();  		guiWindow2.go();  	} } 2. Border Layout
13 2. Grid Layout import java.awt.*;  public class TestGrid {  	private Frame f; 	private Button b1, b2, b3, b4, b5, b6; 	public void go() {  	f = new Frame(“Grid Layout"); f.setLayout (new GridLayout(3,2)); b1 = new Button("1"); b2 = new Button("2"); b3 = new Button("3"); b4 = new Button("4");  b5 = new Button("5"); b6 = new Button("6");  f.add(b1);  f.add(b2); f.add(b3); f.add(b4); f.add(b5); f.add(b6); f.pack(); f.setVisible(true);  	}  	public static void main(String args[]) {  TestGrid grid = new TestGrid();  grid.go();  	} }
Layout Manager –3.Grid Layout Add(): components are disposed from left to right, upside to bottom The size of each cell, which is divided by Grid Layout Manager, is same. The number of cells can be defined when they are created with Constructor. f.setLayout (new GridLayout(3,2)); 14

More Related Content

Similar to 09 gui

JEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdf
JEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdfJEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdf
JEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdf
MarlouFelixIIICunana
 
java2 swing
java2 swingjava2 swing
java2 swing
guest0282b71
 
Getting started with GUI programming in Java_1
Getting started with GUI programming in Java_1Getting started with GUI programming in Java_1
Getting started with GUI programming in Java_1
Muhammad Shebl Farag
 
Oop lecture9 10
Oop lecture9 10Oop lecture9 10
Oop lecture9 10
Shahriar Robbani
 
ADVANCED JAVA PROGRAMME
ADVANCED JAVA PROGRAMME ADVANCED JAVA PROGRAMME
ADVANCED JAVA PROGRAMME
RRamyaDevi
 
Chap1 1 4
Chap1 1 4Chap1 1 4
Chap1 1 4
Hemo Chella
 
GWT Training - Session 2/3
GWT Training - Session 2/3GWT Training - Session 2/3
GWT Training - Session 2/3
Faiz Bashir
 
Awt and swing in java
Awt and swing in javaAwt and swing in java
Awt and swing in java
Shehrevar Davierwala
 
Advanced Java programming
Advanced Java programmingAdvanced Java programming
Advanced Java programming
PriyadharshiniVS
 
swings.pptx
swings.pptxswings.pptx
swings.pptx
Parameshwar Maddela
 
Abstract Window Toolkit
Abstract Window ToolkitAbstract Window Toolkit
Abstract Window Toolkit
RutvaThakkar1
 
Final_Project
Final_ProjectFinal_Project
Final_Project
DivinelyFavored
 
3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb
3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb
3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb
abhishekmathuroffici
 
Java Graphics Programming
Java Graphics ProgrammingJava Graphics Programming
Java Graphics Programming
Riccardo Cardin
 
Advance Java Programming (CM5I) 1.AWT
Advance Java Programming (CM5I) 1.AWTAdvance Java Programming (CM5I) 1.AWT
Advance Java Programming (CM5I) 1.AWT
Payal Dungarwal
 
AJP Practical Questions with Solution.docx
AJP Practical Questions with Solution.docxAJP Practical Questions with Solution.docx
AJP Practical Questions with Solution.docx
RenuDeshmukh5
 
ch20.pptx
ch20.pptxch20.pptx
01. introduction to swing
01. introduction to swing01. introduction to swing
01. introduction to swing
Prashant Mehta
 
Nouveau document texte-_-_
Nouveau document texte-_-_Nouveau document texte-_-_
Nouveau document texte-_-_
Mohamed Mlika
 
L11cs2110sp13
L11cs2110sp13L11cs2110sp13
L11cs2110sp13
karan saini
 

Similar to 09 gui (20)

JEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdf
JEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdfJEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdf
JEDI Slides-Intro2-Chapter19-Abstract Windowing Toolkit and Swing.pdf
 
java2 swing
java2 swingjava2 swing
java2 swing
 
Getting started with GUI programming in Java_1
Getting started with GUI programming in Java_1Getting started with GUI programming in Java_1
Getting started with GUI programming in Java_1
 
Oop lecture9 10
Oop lecture9 10Oop lecture9 10
Oop lecture9 10
 
ADVANCED JAVA PROGRAMME
ADVANCED JAVA PROGRAMME ADVANCED JAVA PROGRAMME
ADVANCED JAVA PROGRAMME
 
Chap1 1 4
Chap1 1 4Chap1 1 4
Chap1 1 4
 
GWT Training - Session 2/3
GWT Training - Session 2/3GWT Training - Session 2/3
GWT Training - Session 2/3
 
Awt and swing in java
Awt and swing in javaAwt and swing in java
Awt and swing in java
 
Advanced Java programming
Advanced Java programmingAdvanced Java programming
Advanced Java programming
 
swings.pptx
swings.pptxswings.pptx
swings.pptx
 
Abstract Window Toolkit
Abstract Window ToolkitAbstract Window Toolkit
Abstract Window Toolkit
 
Final_Project
Final_ProjectFinal_Project
Final_Project
 
3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb
3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb
3_ppt_Layout.pptxgßbdbdbdbsbsbsbbsbsbsbsbsb
 
Java Graphics Programming
Java Graphics ProgrammingJava Graphics Programming
Java Graphics Programming
 
Advance Java Programming (CM5I) 1.AWT
Advance Java Programming (CM5I) 1.AWTAdvance Java Programming (CM5I) 1.AWT
Advance Java Programming (CM5I) 1.AWT
 
AJP Practical Questions with Solution.docx
AJP Practical Questions with Solution.docxAJP Practical Questions with Solution.docx
AJP Practical Questions with Solution.docx
 
ch20.pptx
ch20.pptxch20.pptx
ch20.pptx
 
01. introduction to swing
01. introduction to swing01. introduction to swing
01. introduction to swing
 
Nouveau document texte-_-_
Nouveau document texte-_-_Nouveau document texte-_-_
Nouveau document texte-_-_
 
L11cs2110sp13
L11cs2110sp13L11cs2110sp13
L11cs2110sp13
 

Recently uploaded

A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 

Recently uploaded (20)

A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 

09 gui

  • 1. 09 GUIs HUREE University ICT Instructor: M.J LEE
  • 2. Contents Abstract Window Toolkit Container Frame Panel Layout Manager Flow Layout Border Layout Grid Layout 2
  • 3.
  • 4.
  • 5. Panel Use add() method, when adding components Panel can’t be displayed by itself. Therefore, it should be included in Frame Some components are disposed in Panel by Layout Manager 5
  • 6. 6 import java.awt.*; public class FrameWithPanelextends Frame { public FrameWithPanel (String str) { super(str); } } Public class FrameWithPanelMain() { public static void main (String args[]) { FrameWithPanelfr = new FrameWithPanel(“Panel in Frame"); Panel pan = new Panel();   fr.setSize(200,200); // a frame fr.setBackground(Color.blue); fr.setLayout(null);   pan.setSize(100,100); // a panel pan.setBackground(Color.yellow);   fr.add(pan); // put the panel in the frame fr.setVisible(true); } } Panel
  • 7. Layout Manager FlowLayout Panel, default Layout manager of Applet BorderLayout Window, default Layout manager of Frame GridLayout CardLayout GridBagLayout 7
  • 8. 8 import java.awt.*; public class ExGui { private Frame f; // declarationFrame private Button b1; // declaration Button private Button b2; public void go() { f = new Frame("GUI example"); f.setLayout(new FlowLayout()); b1 = new Button(“Yes”); b2 = new Button(“No"); f.add(b1); // append Button on Frame f.add(b2); f.pack(); // instead of “.setSize()” f.setVisible(true); } } public static ExGuiMain() { public static void main(String args[]) { ExGuiguiWindow = new ExGui(); guiWindow.go(); } } 1. Flow Layout
  • 9. Layout Manager –1.Flow Layout At above example, which didn't inherit Frame, declared new frame in the class Properties, Flow Layout Manager is a default layout manager of Panel depose components from left to right! depose components at the middle of Frame, as default decide the size of components by itself It is possible to exchange attributes by using constructor 9 setLayout(new FlowLayout(FlowLayout.RIGHT, 20, 40))
  • 10. Layout Manager –1.Flow Layout Components are disposed at right side. Gap of left and right between components Gap of top and bottom between components (unit: pixel) 10 setLayout(new FlowLayout(FlowLayout.RIGHT, 20, 40)) 1 2 3
  • 11. 11 import java.awt.*; public class MyFlow { private Frame f; private Button button1, button2, button3; public void go() { f = new Frame("Flow Layout"); f.setLayout(new FlowLayout()); button1 = new Button("Ok"); button2 = new Button("Open"); button3 = new Button("Close"); f.add(button1); f.add(button2); f.add(button3); f.setSize(100,100); f.setVisible(true); } } Public class MyFlowMain() { public static void main(String args[]) { MyFlowmflow = new MyFlow(); mflow.go(); } } 1. Flow Layout
  • 12. 12 import java.awt.*; public class ExGui2 { private Frame f; private Button bn, bs, bw, be, bc; public void go() { f = new Frame("Border Layout"); bn = new Button("B1"); bs = new Button("B2"); bw = new Button("B3"); be = new Button("B4"); bc = new Button("B5"); f.add(bn, BorderLayout.NORTH); f.add(bs, BorderLayout.SOUTH); f.add(bw, BorderLayout.WEST); f.add(be, BorderLayout.EAST); f.add(bc, BorderLayout.CENTER); f.setSize(200,200); f.setVisible(true); } public static void main(String args[]) { ExGui2 guiWindow2 = new ExGui2(); guiWindow2.go(); } } 2. Border Layout
  • 13. 13 2. Grid Layout import java.awt.*; public class TestGrid { private Frame f; private Button b1, b2, b3, b4, b5, b6; public void go() { f = new Frame(“Grid Layout"); f.setLayout (new GridLayout(3,2)); b1 = new Button("1"); b2 = new Button("2"); b3 = new Button("3"); b4 = new Button("4"); b5 = new Button("5"); b6 = new Button("6"); f.add(b1); f.add(b2); f.add(b3); f.add(b4); f.add(b5); f.add(b6); f.pack(); f.setVisible(true); } public static void main(String args[]) { TestGrid grid = new TestGrid(); grid.go(); } }
  • 14. Layout Manager –3.Grid Layout Add(): components are disposed from left to right, upside to bottom The size of each cell, which is divided by Grid Layout Manager, is same. The number of cells can be defined when they are created with Constructor. f.setLayout (new GridLayout(3,2)); 14